package com.yycx.module.bus.client.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yycx.common.base.entity.EntityMap;
import com.yycx.common.mybatis.base.entity.AbstractEntity;
import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.yycx.common.mybatis.annotation.TableAlias;

/**
 * 厂家对账明细
 *
 * @author flyme
 * @date 2021-02-19
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("bus_sfinance_details")
@TableAlias("bsd")
@ApiModel(value="BusSfinanceDetails对象", description="厂家对账明细")
public class BusSfinanceDetails extends AbstractEntity {

private static final long serialVersionUID=1L;

    @ApiModelProperty(value = "主键")
    @TableId(value = "sfinanceDetailsId", type = IdType.ASSIGN_ID)
    private Long sfinanceDetailsId;

    @ApiModelProperty(value = "对账表ID")
    private Long sfinanceId;

    @ApiModelProperty(value = "订单ID")
    private Long orderId;

    @ApiModelProperty(value = "订单明细ID")
    private Long orderDetailsId;

    @ApiModelProperty(value = "单号")
    private String orderNo;

    @ApiModelProperty(value = "销售日期")
    private String saleDate;

    @ApiModelProperty(value = "部门名称")
    private String deptName;

    @ApiModelProperty(value = "业务员名称")
    private String saleManName;

    @ApiModelProperty(value = "购货方名称")
    private String customName;

    @ApiModelProperty(value = "药品名称")
    private String drugsName;

    @ApiModelProperty(value = "规格")
    private String drugsSpec;

    @ApiModelProperty(value = "数量")
    private String saleNum;

    @ApiModelProperty(value = "价格")
    private BigDecimal salePrice;

    @ApiModelProperty(value = "成本价")
    private BigDecimal costPrice;

    @ApiModelProperty(value = "成本金额")
    private BigDecimal costAmount;

    @ApiModelProperty(value = "销售金额")
    private BigDecimal saleAmount;

    @ApiModelProperty(value = "回款金额")
    private BigDecimal returnAmount;

    @ApiModelProperty(value = "回款日期")
    private String returnDate;

    @ApiModelProperty(value = "认款月份")
    private String renkuanDate;

    private Integer supplierBondType;

    @ApiModelProperty(value = "公司垫款")
    private BigDecimal supplierBondAmount;

    @ApiModelProperty(value = "垫款日期")
    private String supplierBondDate;

    @ApiModelProperty(value = "退垫付款")
    private BigDecimal returnSupplierBond;

    @ApiModelProperty(value = "退款日期")
    private String returnSupplierBondDate;

    @ApiModelProperty(value = "供方高开税金")
    private BigDecimal supplierGapUpTaxesAmount;

    @ApiModelProperty(value = "供方应返金额")
    private BigDecimal supplierRetable;

    @ApiModelProperty(value = "供货方返款费率")
    private BigDecimal supplierSettleRate;

    @ApiModelProperty(value = "供方已返金额")
    private BigDecimal supplierRealAmount;

    @ApiModelProperty(value = "返款日期")
    private String supplierRealDate;

    @ApiModelProperty(value = "与供方开票金额")
    private BigDecimal invoicePaymentAmount;

    @ApiModelProperty(value = "批号")
    private String drugsLotNo;

    @ApiModelProperty(value = "备注")
    private String remark;

    @TableField(exist = false)
    private List<BusOrderDetails> customReturnList;


    @TableField(exist = false)
    private List<BusOrderDetails>  refundList;

    @TableField(exist = false)
    private List<BusOrderDetails>  dianfuList;


}
